package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 工程管理对象 project
 * 
 * @author genghz
 * @date 2021-12-18
 */
public class Project extends BaseEntity
{
    private static final long serialVersionUID = 1L;


    private String milestoneName;

    /** 是否里程碑 */
    @Excel(name = "类别", width = 12, readConverterExp="1=里程碑,0=普通")
    private String milestone;

    /** 任务ID */
    private Long taskId;

    private Long planId ;

    private Long[] sysLel;

    /** 系统 */

    private Long sysLel1;

    @Excel(name = "系统", width = 12)
    private String sysLel1Name ;

    /** 子系统 */

    private Long sysLel2;

    @Excel(name = "分系统", width = 12)
    private String sysLel2Name ;

    private Long sysLel3;

    @Excel(name = "子系统", width = 12)
    private String sysLel3Name ;

    /** 任务名称 */
    @Excel(name = "计划描述")
    private String nodeTask;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始时间", width = 12, dateFormat = "yyyy-MM-dd")
    private Date startDate;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束时间", width = 12, dateFormat = "yyyy-MM-dd")
    private Date endDate;



    /** 责任部门 */
    @Excel(name = "责任部门")
    private String deptId;

    /** 完成输出物 */
    @Excel(name = "交付物")
    private String haveDone;

    /** 依赖任务 */

    private Long dependId;

    @Excel(name = "前置任务")
    private String dependName;

    @Excel(name = "执行状态", readConverterExp="1=未开始,2=进行中,3=已完成,4=超期,5=临期")
    private String status ;

    public Long[] getSysLel() {
        return sysLel;
    }

    public void setSysLel(Long[] sysLel) {
        this.sysLel = sysLel;
    }

    public void setTaskId(Long taskId)
    {
        this.taskId = taskId;
    }

    public Long getTaskId() 
    {
        return taskId;
    }

    public Long getSysLel1() {
        return sysLel1;
    }

    public void setSysLel1(Long sysLel1) {
        this.sysLel1 = sysLel1;
    }

    public Long getSysLel2() {
        return sysLel2;
    }

    public void setSysLel2(Long sysLel2) {
        this.sysLel2 = sysLel2;
    }

    public Long getSysLel3() {
        return sysLel3;
    }

    public void setSysLel3(Long sysLel3) {
        this.sysLel3 = sysLel3;
    }

    public void setNodeTask(String nodeTask)
    {
        this.nodeTask = nodeTask;
    }

    public String getNodeTask() 
    {
        return nodeTask;
    }
    public void setStartDate(Date startDate) 
    {
        this.startDate = startDate;
    }

    public Date getStartDate() 
    {
        return startDate;
    }
    public void setEndDate(Date endDate) 
    {
        this.endDate = endDate;
    }

    public Date getEndDate() 
    {
        return endDate;
    }
    public void setMilestone(String milestone)
    {
        this.milestone = milestone;
    }

    public String getMilestone()
    {
        return milestone;
    }
    public void setHaveDone(String haveDone) 
    {
        this.haveDone = haveDone;
    }

    public String getHaveDone() 
    {
        return haveDone;
    }
    public void setDependId(Long dependId) 
    {
        this.dependId = dependId;
    }

    public Long getDependId() 
    {
        return dependId;
    }
    public void setDeptId(String deptId) 
    {
        this.deptId = deptId;
    }

    public String getDeptId() 
    {
        return deptId;
    }

    public Long getPlanId() {
        return planId;
    }

    public void setPlanId(Long planId) {
        this.planId = planId;
    }

    public String getSysLel1Name() {
        return sysLel1Name;
    }

    public void setSysLel1Name(String sysLel1Name) {
        this.sysLel1Name = sysLel1Name;
    }

    public String getSysLel2Name() {
        return sysLel2Name;
    }

    public void setSysLel2Name(String sysLel2Name) {
        this.sysLel2Name = sysLel2Name;
    }

    public String getSysLel3Name() {
        return sysLel3Name;
    }

    public void setSysLel3Name(String sysLel3Name) {
        this.sysLel3Name = sysLel3Name;
    }

    public String getDependName() {
        return dependName;
    }

    public void setDependName(String dependName) {
        this.dependName = dependName;
    }

    public String getMilestoneName() {
        return milestoneName;
    }

    public void setMilestoneName(String milestoneName) {
        this.milestoneName = milestoneName;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("taskId", getTaskId())
            .append("sysLel1", getSysLel1())
            .append("sysLel2", getSysLel2())
            .append("nodeTask", getNodeTask())
            .append("startDate", getStartDate())
            .append("endDate", getEndDate())
            .append("milestone", getMilestone())
            .append("haveDone", getHaveDone())
            .append("dependId", getDependId())
            .append("deptId", getDeptId())
            .toString();
    }
}
